#ifndef RENDERER_H
#define RENDERER_H

#include "SDL.h"
#include "SDL_ttf.h"
#include <string>
#include <iostream>

class Renderer {
public:
	Renderer(SDL_Window* mWindow, SDL_Renderer* mRenderer);
	~Renderer();
	void RenderText(SDL_Rect rect, std::string text, Uint8 R, Uint8 G, Uint8 B, Uint8 A);
	void renderRotatedTexture(SDL_Texture* Texture, const int degree, const double porpotionX, const double porpotionY, const double porpotionSizeX, const double porpotionSizeY) const;
	void RenderTexture(SDL_Texture* Texture, const double porpotionX, const double porpotionY, const double porpotionSizeX, const double porpotionSizeY);
	SDL_Renderer* getRenderer();
	SDL_Window* getWindow();

	void RenderRect(SDL_Rect rect, Uint8 R, Uint8 G, Uint8 B, Uint8 A);

private:
	SDL_Window* mWindow;
	SDL_Renderer* mRenderer;
	TTF_Font* font = NULL;
};

#endif
